package com.ktgj.other.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ktgj.common.core.annotation.Excel;
import com.ktgj.other.domain.RcOrderTracking;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class RcOrderVO implements Serializable {
    public RcOrderVO() {
        this.rcOrderTrackings = new ArrayList<>();
    }

    /** 用车方式：1 接机，2 送机，3 接站，4 送站 */
    @Excel(name = "用车方式：1 接机，2 送机，3 接站，4 送站")
    private Long usedcarway;

    /** 航班号 */
    @Excel(name = "航班号")
    private String flightnumber;

    /** 订单号 */
    @Excel(name = "订单号")
    private String orderid;

    /** 合作商订单号 */
    @Excel(name = "合作商订单号")
    private String bussinessorderid;

    /** 租车订单状态枚举：默认 0 未派单1 等待确认2  等待服务3 服务中4 服务结束5 服务取消6 异常订单7  服务取消中8 */
    @Excel(name = "租车订单状态枚举：默认 0 未派单1 等待确认2  等待服务3 服务中4 服务结束5 服务取消6 异常订单7  服务取消中8")
    private Long orderstatus;

    /** 乘客姓名 */
    @Excel(name = "乘客姓名")
    private String passengername;

    /** 乘客联系电话 */
    @Excel(name = "乘客联系电话")
    private String passengertel;

    /** 车型名称 */
    @Excel(name = "车型名称")
    private String cartypename;

    /** 预定时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "预定时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date boardingtime;

    /** 服务结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "服务结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date serviceendtime;

    /** 上车地点 */
    @Excel(name = "上车地点")
    private String getonaddress;

    /** 下车地点 */
    @Excel(name = "下车地点")
    private String getoffaddress;

    /** 用户支付金额 */
    @Excel(name = "用户支付金额")
    private BigDecimal paymentamount;

    /** 付款方式：1：信用卡，2：借记卡，4：无卡无密快捷支付，8：支付宝，16：微信支付，32：未知 */
    @Excel(name = "付款方式：1：信用卡，2：借记卡，4：无卡无密快捷支付，8：支付宝，16：微信支付，32：未知")
    private Long paymenttype;

    /** 服务费 CRM 默认收取 30 */
    @Excel(name = "服务费 CRM 默认收取 30")
    private BigDecimal serviceamount;

    /** 车型 */
    @Excel(name = "车型")
    private String cartype;

    /** 司机 */
    @Excel(name = "司机")
    private String drivername;

    /** 司机电话 */
    @Excel(name = "司机电话")
    private String drivertel;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String platenumbers;

    /** 订单跟踪信息 */
    @Excel(name = "订单跟踪信息")
    private List<RcOrderTracking> rcOrderTrackings;

    public Long getUsedcarway() {
        return usedcarway;
    }

    public void setUsedcarway(Long usedcarway) {
        this.usedcarway = usedcarway;
    }

    public String getFlightnumber() {
        return flightnumber;
    }

    public void setFlightnumber(String flightnumber) {
        this.flightnumber = flightnumber;
    }

    public String getOrderid() {
        return orderid;
    }

    public void setOrderid(String orderid) {
        this.orderid = orderid;
    }

    public String getBussinessorderid() {
        return bussinessorderid;
    }

    public void setBussinessorderid(String bussinessorderid) {
        this.bussinessorderid = bussinessorderid;
    }

    public Long getOrderstatus() {
        return orderstatus;
    }

    public void setOrderstatus(Long orderstatus) {
        this.orderstatus = orderstatus;
    }

    public String getPassengername() {
        return passengername;
    }

    public void setPassengername(String passengername) {
        this.passengername = passengername;
    }

    public String getPassengertel() {
        return passengertel;
    }

    public void setPassengertel(String passengertel) {
        this.passengertel = passengertel;
    }

    public String getCartypename() {
        return cartypename;
    }

    public void setCartypename(String cartypename) {
        this.cartypename = cartypename;
    }

    public Date getBoardingtime() {
        return boardingtime;
    }

    public void setBoardingtime(Date boardingtime) {
        this.boardingtime = boardingtime;
    }

    public Date getServiceendtime() {
        return serviceendtime;
    }

    public void setServiceendtime(Date serviceendtime) {
        this.serviceendtime = serviceendtime;
    }

    public String getGetonaddress() {
        return getonaddress;
    }

    public void setGetonaddress(String getonaddress) {
        this.getonaddress = getonaddress;
    }

    public String getGetoffaddress() {
        return getoffaddress;
    }

    public void setGetoffaddress(String getoffaddress) {
        this.getoffaddress = getoffaddress;
    }

    public BigDecimal getPaymentamount() {
        return paymentamount;
    }

    public void setPaymentamount(BigDecimal paymentamount) {
        this.paymentamount = paymentamount;
    }

    public Long getPaymenttype() {
        return paymenttype;
    }

    public void setPaymenttype(Long paymenttype) {
        this.paymenttype = paymenttype;
    }

    public BigDecimal getServiceamount() {
        return serviceamount;
    }

    public void setServiceamount(BigDecimal serviceamount) {
        this.serviceamount = serviceamount;
    }

    public String getCartype() {
        return cartype;
    }

    public void setCartype(String cartype) {
        this.cartype = cartype;
    }

    public String getDrivername() {
        return drivername;
    }

    public void setDrivername(String drivername) {
        this.drivername = drivername;
    }

    public String getDrivertel() {
        return drivertel;
    }

    public void setDrivertel(String drivertel) {
        this.drivertel = drivertel;
    }

    public String getPlatenumbers() {
        return platenumbers;
    }

    public void setPlatenumbers(String platenumbers) {
        this.platenumbers = platenumbers;
    }

    public List<RcOrderTracking> getRcOrderTrackings() {
        return rcOrderTrackings;
    }
}
